<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>T3D: T3D::GameObject Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">T3D
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><b>T3D</b></li><li class="navelem"><a class="el" href="class_t3_d_1_1_game_object.html">GameObject</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="class_t3_d_1_1_game_object-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">T3D::GameObject Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Generic class for all objects that exist in the world.  
 <a href="class_t3_d_1_1_game_object.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_game_object_8h_source.html">GameObject.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a3da415b07696c726f2f31317651a94a6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a3da415b07696c726f2f31317651a94a6">GameObject</a> (<a class="el" href="class_t3_d_1_1_t3_d_application.html">T3DApplication</a> *app)</td></tr>
<tr class="separator:a3da415b07696c726f2f31317651a94a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ebb97ddcd82ac6f6e7baf06c6509afa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a5ebb97ddcd82ac6f6e7baf06c6509afa">~GameObject</a> (void)</td></tr>
<tr class="separator:a5ebb97ddcd82ac6f6e7baf06c6509afa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae65331cd89f97f7064b89829b8c0f1a6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#ae65331cd89f97f7064b89829b8c0f1a6">setTransform</a> (<a class="el" href="class_t3_d_1_1_transform.html">Transform</a> *t)</td></tr>
<tr class="separator:ae65331cd89f97f7064b89829b8c0f1a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84e7a2f11afebcccb89157eefc13956e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_t3_d_1_1_transform.html">Transform</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a84e7a2f11afebcccb89157eefc13956e">getTransform</a> ()</td></tr>
<tr class="separator:a84e7a2f11afebcccb89157eefc13956e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a68bd2f90384e3600e5499adf6a29c1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a5a68bd2f90384e3600e5499adf6a29c1">setCamera</a> (<a class="el" href="class_t3_d_1_1_camera.html">Camera</a> *s)</td></tr>
<tr class="separator:a5a68bd2f90384e3600e5499adf6a29c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae32ea9a7098873ae9095b63aa04898a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_t3_d_1_1_camera.html">Camera</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#ae32ea9a7098873ae9095b63aa04898a7">getCamera</a> ()</td></tr>
<tr class="separator:ae32ea9a7098873ae9095b63aa04898a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90c2f7555471dbe3f96441670f5ca164"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a90c2f7555471dbe3f96441670f5ca164">setLight</a> (<a class="el" href="class_t3_d_1_1_light.html">Light</a> *l)</td></tr>
<tr class="separator:a90c2f7555471dbe3f96441670f5ca164"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5e6f7e78b0ec27f4397b6111bf32741"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_t3_d_1_1_light.html">Light</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#ae5e6f7e78b0ec27f4397b6111bf32741">getLight</a> ()</td></tr>
<tr class="separator:ae5e6f7e78b0ec27f4397b6111bf32741"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fd225023e438aa3c53c80fcc5b7b37d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a5fd225023e438aa3c53c80fcc5b7b37d">setMaterial</a> (<a class="el" href="class_t3_d_1_1_material.html">Material</a> *m)</td></tr>
<tr class="separator:a5fd225023e438aa3c53c80fcc5b7b37d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85d6efb9b3e09e6f29e9166a3711ea44"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_t3_d_1_1_material.html">Material</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a85d6efb9b3e09e6f29e9166a3711ea44">getMaterial</a> ()</td></tr>
<tr class="separator:a85d6efb9b3e09e6f29e9166a3711ea44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4b0c0c8bbcf09c316c46bc9bc6d7fa4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#ac4b0c0c8bbcf09c316c46bc9bc6d7fa4">setMesh</a> (<a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> *m)</td></tr>
<tr class="separator:ac4b0c0c8bbcf09c316c46bc9bc6d7fa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af17beeed70f39f2bdfb346ecdbc7a5a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#af17beeed70f39f2bdfb346ecdbc7a5a7">getMesh</a> ()</td></tr>
<tr class="separator:af17beeed70f39f2bdfb346ecdbc7a5a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc9b925ed3dd03b1da45929675e1591d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc9b925ed3dd03b1da45929675e1591d"></a>
<a class="el" href="class_t3_d_1_1_t3_d_application.html">T3DApplication</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>getApp</b> ()</td></tr>
<tr class="separator:acc9b925ed3dd03b1da45929675e1591d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac8822a022b16a89fcbe6c7ecac53b31"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#aac8822a022b16a89fcbe6c7ecac53b31">addComponent</a> (<a class="el" href="class_t3_d_1_1_component.html">Component</a> *component)</td></tr>
<tr class="separator:aac8822a022b16a89fcbe6c7ecac53b31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53b1349aa04ebd6e643286bdd6ce0167"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_t3_d_1_1_game_object.html#a53b1349aa04ebd6e643286bdd6ce0167">update</a> (float dt)</td></tr>
<tr class="separator:a53b1349aa04ebd6e643286bdd6ce0167"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98adfe5bb543509f9020d4f414ad8c3a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a98adfe5bb543509f9020d4f414ad8c3a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setDistanceToCamera</b> (float distance)</td></tr>
<tr class="separator:a98adfe5bb543509f9020d4f414ad8c3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69f8350fe099f6609c5f5e7d6181c9ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69f8350fe099f6609c5f5e7d6181c9ef"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><b>getDistanceToCamera</b> () const </td></tr>
<tr class="separator:a69f8350fe099f6609c5f5e7d6181c9ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4aa3e5ae64cf89d4d6f3db5676d129a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4aa3e5ae64cf89d4d6f3db5676d129a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setVisible</b> (bool visible)</td></tr>
<tr class="separator:ab4aa3e5ae64cf89d4d6f3db5676d129a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b7cfeddb36c5101450ab9b454d49a75"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b7cfeddb36c5101450ab9b454d49a75"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isVisible</b> ()</td></tr>
<tr class="separator:a3b7cfeddb36c5101450ab9b454d49a75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc589f2436b48d48d656ba0ddd445060"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc589f2436b48d48d656ba0ddd445060"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setAlpha</b> (float alpha)</td></tr>
<tr class="separator:acc589f2436b48d48d656ba0ddd445060"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71810f1fb9a9b58a7c75fee20e5df4f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71810f1fb9a9b58a7c75fee20e5df4f3"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><b>getAlpha</b> ()</td></tr>
<tr class="separator:a71810f1fb9a9b58a7c75fee20e5df4f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a3e45636083920598dc1167839dc777ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e45636083920598dc1167839dc777ce"></a>
<a class="el" href="class_t3_d_1_1_t3_d_application.html">T3DApplication</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>app</b></td></tr>
<tr class="separator:a3e45636083920598dc1167839dc777ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06127bdf828d652101df82747e480c0d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06127bdf828d652101df82747e480c0d"></a>
<a class="el" href="class_t3_d_1_1_transform.html">Transform</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>transform</b></td></tr>
<tr class="separator:a06127bdf828d652101df82747e480c0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5be5b376ead902b1ff4e788eacb406d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5be5b376ead902b1ff4e788eacb406d5"></a>
<a class="el" href="class_t3_d_1_1_camera.html">Camera</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>camera</b></td></tr>
<tr class="separator:a5be5b376ead902b1ff4e788eacb406d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a704468b2b316e174aec0d2c85cca7885"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a704468b2b316e174aec0d2c85cca7885"></a>
<a class="el" href="class_t3_d_1_1_light.html">Light</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>light</b></td></tr>
<tr class="separator:a704468b2b316e174aec0d2c85cca7885"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92f6bc7409b5a4a204b582710c364f0e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92f6bc7409b5a4a204b582710c364f0e"></a>
<a class="el" href="class_t3_d_1_1_material.html">Material</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>material</b></td></tr>
<tr class="separator:a92f6bc7409b5a4a204b582710c364f0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a6458961f8217b5ccb8133542749930"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a6458961f8217b5ccb8133542749930"></a>
<a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>mesh</b></td></tr>
<tr class="separator:a9a6458961f8217b5ccb8133542749930"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cad0b7e00e07a46816dab74aff1f26b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2cad0b7e00e07a46816dab74aff1f26b"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><b>alpha</b></td></tr>
<tr class="separator:a2cad0b7e00e07a46816dab74aff1f26b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Generic class for all objects that exist in the world. </p>
<p>A <a class="el" href="class_t3_d_1_1_game_object.html" title="Generic class for all objects that exist in the world. ">GameObject</a>'s location is defined by the attached <a class="el" href="class_t3_d_1_1_transform.html">Transform</a>. The behaviour of a <a class="el" href="class_t3_d_1_1_game_object.html" title="Generic class for all objects that exist in the world. ">GameObject</a> is customised by adding one or more <a class="el" href="class_t3_d_1_1_component.html">Component</a>'s. Special <a class="el" href="class_t3_d_1_1_component.html">Component</a>'s such as <a class="el" href="class_t3_d_1_1_light.html">Light</a>'s, <a class="el" href="class_t3_d_1_1_camera.html">Camera</a>'s and <a class="el" href="class_t3_d_1_1_material.html">Material</a>'s, should be added using the appropriate method. </p>
<dl class="section author"><dt>Author</dt><dd>Robert Ollington </dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a3da415b07696c726f2f31317651a94a6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">T3D::GameObject::GameObject </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_t3_d_1_1_t3_d_application.html">T3DApplication</a> *&#160;</td>
          <td class="paramname"><em>app</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Creates a game object and assigns the parent application </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">app</td><td>The application that spawned this game object </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a5ebb97ddcd82ac6f6e7baf06c6509afa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">T3D::GameObject::~GameObject </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Destructor The destructor is responsible for freeing all components </p>
<dl class="section remark"><dt>Remarks</dt><dd>Note that the <a class="el" href="class_t3_d_1_1_transform.html">Transform</a> is not deleted, it is the <a class="el" href="class_t3_d_1_1_transform.html">Transform</a>'s responsibility to delete attached game objects not the other waya round </dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>Finish deleting components </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aac8822a022b16a89fcbe6c7ecac53b31"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void T3D::GameObject::addComponent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_t3_d_1_1_component.html">Component</a> *&#160;</td>
          <td class="paramname"><em>component</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Add a <a class="el" href="class_t3_d_1_1_component.html">Component</a> to this game object And also initialise the <a class="el" href="class_t3_d_1_1_component.html">Component</a> (components should not be initialised before attaching to a game object) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">component</td><td>The <a class="el" href="class_t3_d_1_1_component.html">Component</a> to attach </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ae32ea9a7098873ae9095b63aa04898a7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_t3_d_1_1_camera.html">Camera</a> * T3D::GameObject::getCamera </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Returns the <a class="el" href="class_t3_d_1_1_camera.html">Camera</a> Will return NULL if no camera is attached </p>
<dl class="section return"><dt>Returns</dt><dd>The current <a class="el" href="class_t3_d_1_1_camera.html">Camera</a> attached to this game object </dd></dl>

</div>
</div>
<a class="anchor" id="ae5e6f7e78b0ec27f4397b6111bf32741"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_t3_d_1_1_light.html">Light</a> * T3D::GameObject::getLight </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Returns the <a class="el" href="class_t3_d_1_1_light.html">Light</a> Will return NULL if no light is attached </p>
<dl class="section return"><dt>Returns</dt><dd>The current <a class="el" href="class_t3_d_1_1_light.html">Light</a> attached to this game object </dd></dl>

</div>
</div>
<a class="anchor" id="a85d6efb9b3e09e6f29e9166a3711ea44"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_t3_d_1_1_material.html">Material</a> * T3D::GameObject::getMaterial </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Returns the <a class="el" href="class_t3_d_1_1_material.html">Material</a> Will return NULL if no material is attached </p>
<dl class="section return"><dt>Returns</dt><dd>The current <a class="el" href="class_t3_d_1_1_material.html">Material</a> attached to this game object </dd></dl>

</div>
</div>
<a class="anchor" id="af17beeed70f39f2bdfb346ecdbc7a5a7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> * T3D::GameObject::getMesh </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Returns the <a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> Will return NULL if no mesh is attached </p>
<dl class="section return"><dt>Returns</dt><dd>The current <a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> attached to this game object </dd></dl>

</div>
</div>
<a class="anchor" id="a84e7a2f11afebcccb89157eefc13956e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_t3_d_1_1_transform.html">Transform</a> * T3D::GameObject::getTransform </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Returns the Trasform </p>
<dl class="section return"><dt>Returns</dt><dd>The current <a class="el" href="class_t3_d_1_1_transform.html">Transform</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a5a68bd2f90384e3600e5499adf6a29c1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void T3D::GameObject::setCamera </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_t3_d_1_1_camera.html">Camera</a> *&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Attaches a <a class="el" href="class_t3_d_1_1_camera.html">Camera</a> to this game object Sets the camera variable for this object and also the gameObject link for the <a class="el" href="class_t3_d_1_1_camera.html">Camera</a> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>The <a class="el" href="class_t3_d_1_1_camera.html">Camera</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Should the camera also be added to the list of <a class="el" href="class_t3_d_1_1_component.html">Component</a>'s? If not, why is <a class="el" href="class_t3_d_1_1_camera.html">Camera</a> a <a class="el" href="class_t3_d_1_1_component.html">Component</a>? </dd></dl>

</div>
</div>
<a class="anchor" id="a90c2f7555471dbe3f96441670f5ca164"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void T3D::GameObject::setLight </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_t3_d_1_1_light.html">Light</a> *&#160;</td>
          <td class="paramname"><em>l</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Attaches a <a class="el" href="class_t3_d_1_1_light.html">Light</a> to this game object Sets the light variable for this object and also the gameObject link for the <a class="el" href="class_t3_d_1_1_light.html">Light</a>, and adds the light to the list in the <a class="el" href="class_t3_d_1_1_renderer.html" title="Generic class for renderers. ">Renderer</a> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">l</td><td>The <a class="el" href="class_t3_d_1_1_light.html">Light</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>Should the light also be added to the list of <a class="el" href="class_t3_d_1_1_component.html">Component</a>'s? If not, why is <a class="el" href="class_t3_d_1_1_light.html">Light</a> a <a class="el" href="class_t3_d_1_1_component.html">Component</a>? </dd></dl>

</div>
</div>
<a class="anchor" id="a5fd225023e438aa3c53c80fcc5b7b37d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void T3D::GameObject::setMaterial </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_t3_d_1_1_material.html">Material</a> *&#160;</td>
          <td class="paramname"><em>m</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Attaches a <a class="el" href="class_t3_d_1_1_material.html">Material</a> to this game object Sets the material variable for this object </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">m</td><td>The <a class="el" href="class_t3_d_1_1_material.html">Material</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>Should <a class="el" href="class_t3_d_1_1_material.html">Material</a> be a <a class="el" href="class_t3_d_1_1_component.html">Component</a>? </dd></dl>

</div>
</div>
<a class="anchor" id="ac4b0c0c8bbcf09c316c46bc9bc6d7fa4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void T3D::GameObject::setMesh </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> *&#160;</td>
          <td class="paramname"><em>m</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Attaches a <a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> to this game object Sets the mesh variable for this object and also the gameObject link for the <a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">m</td><td>The <a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo:</a></b></dt><dd>Should the mesh also be added to the list of <a class="el" href="class_t3_d_1_1_component.html">Component</a>'s? If not, why is <a class="el" href="class_t3_d_1_1_mesh.html">Mesh</a> a <a class="el" href="class_t3_d_1_1_component.html">Component</a>? </dd></dl>

</div>
</div>
<a class="anchor" id="ae65331cd89f97f7064b89829b8c0f1a6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void T3D::GameObject::setTransform </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_t3_d_1_1_transform.html">Transform</a> *&#160;</td>
          <td class="paramname"><em>t</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Sets the <a class="el" href="class_t3_d_1_1_transform.html">Transform</a> for this component Set's the new <a class="el" href="class_t3_d_1_1_transform.html">Transform</a> and updates the corrsponding link for the new <a class="el" href="class_t3_d_1_1_transform.html">Transform</a> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">t</td><td>The new <a class="el" href="class_t3_d_1_1_transform.html">Transform</a> </td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>Should this method also update the gameObject of the old <a class="el" href="class_t3_d_1_1_transform.html">Transform</a>? </dd></dl>

</div>
</div>
<a class="anchor" id="a53b1349aa04ebd6e643286bdd6ce0167"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void T3D::GameObject::update </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>dt</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Update all <a class="el" href="class_t3_d_1_1_component.html">Component</a>'s attached to this game object </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dt</td><td>The time that has passed since the last update (in seconds) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>M:/T3Dwin/T3DShaderVersion/T3D/T3D/<a class="el" href="_game_object_8h_source.html">GameObject.h</a></li>
<li>M:/T3Dwin/T3DShaderVersion/T3D/T3D/GameObject.cpp</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Feb 27 2014 10:39:52 for T3D by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>
